51a6e8adcf6ecfe17fd943e098ef4ee316ed38f9,oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/composite/CompositePermissionProvider.java,CompositePermissionProvider,grantsAction,#String#String#Iterable#,217
Before Change
Iterator<AggregatedPermissionProvider> it = providers.iterator();
while (it.hasNext()) {
AggregatedPermissionProvider pp = it.next();
boolean isGranted = pp.isGranted(oakPath, action);
if (!it.hasNext() || !isGranted) {
return isGranted;
}
}
return false;
After Change
@Nonnull final String action,
@Nonnull Iterable<AggregatedPermissionProvider> providers) {
Iterator<AggregatedPermissionProvider> it = providers.iterator();
boolean isGranted = false;
while (it.hasNext()) {
AggregatedPermissionProvider pp = it.next();
isGranted = pp.isGranted(oakPath, action);
if (!isGranted) {
return false;
}
}
return isGranted;
}
private static boolean grantsRepoPermission(long permission, @Nonnull Iterable<AggregatedPermissionProvider> providers) {